﻿using UnityEngine;

namespace VoxelBlock
{
    public class MyMesh
    {
        /// <summary>
        ///  顶点数组，是模型最核心的数据
        /// </summary>
        public Vector3[] vertices;

        /// <summary>
        /// 包含网格中所有三角形的数组。所有模型都是由三角面构成的
        /// </summary>
        public int[] triangles;

        /// <summary>
        /// 贴图坐标对应顶点,网格的基本纹理坐标。
        /// </summary>
        public Vector2[] uv;

        /// <summary>
        /// 贴图坐标对应顶点uv2,网格的基本纹理坐标。
        /// </summary>
        public Vector2[] uv2;
        /// <summary>
        /// 贴图坐标对应顶点uv3,网格的基本纹理坐标。
        /// </summary>
        public Vector2[] uv3;
        /// <summary>
        /// 贴图坐标对应顶点uv4,网格的基本纹理坐标。
        /// </summary>
        public Vector2[] uv4;

        /// <summary>
        /// 网格顶点对应颜色
        /// </summary>
        public Color[] colors;

        /// <summary>
        /// 网格顶点颜色 32位。
        /// </summary>
        public Color32[] colors32 { get; set; }

        /// <summary>
        /// 法线对应顶点,和光照有关
        /// </summary>
        public Vector3[] normals;

        // 每个顶点的骨骼量。
        public BoneWeight[] boneWeights;

        //绑定姿势。在每个索引的绑定姿势是指具有相同的骨骼索引。
        public Matrix4x4[] bindposes;

        //网格的边界体积。
        public Bounds bounds;
    }
}
